<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
*  \file
*
*  \brief       BMW SWC StdDiag
*
*  This file is the external interfaces part of the software component description of the module StdDiag
*  for usage in the BMW AUTOSAR Core.
*
*  \project     BMW Platform Software
*
*  \copyright   BMW AG 2015 - 2017
*
*  \version     5.4.0
*
*/

/*
*
*  THIS FILE WAS GENERATED. DO NOT MODIFY!
*
*  GENERATOR       : BMW PAGe 1.1.0
*
*  GENERATION TIME : 2018-01-22 11:15:00.583168
*
*/
-->
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_4-3-0_STRICT_COMPACT.xsd">
  <AR-PACKAGES>
    <AR-PACKAGE>
      <SHORT-NAME>BMW</SHORT-NAME>
      <AR-PACKAGES>
        <AR-PACKAGE>
          <SHORT-NAME>Platform</SHORT-NAME>
          <AR-PACKAGES>
            <AR-PACKAGE>
              <SHORT-NAME>StdDiag</SHORT-NAME>
              <AR-PACKAGES>

                <!-- Darh -->

                <AR-PACKAGE>
                  <SHORT-NAME>Darh</SHORT-NAME>
                  <AR-PACKAGES>
                    <AR-PACKAGE>
                      <SHORT-NAME>CompuMethods</SHORT-NAME>
                      <ELEMENTS>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_Darh_RoeStateType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                            <COMPU-SCALES>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DARH_ROE_STOPPED</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DARH_ROE_STARTED</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DARH_ROE_UNKNOWN</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                            </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>ImplementationDataTypes</SHORT-NAME>
                      <ELEMENTS>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Darh_RoeStateType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Darh/CompuMethods/CM_Darh_RoeStateType</COMPU-METHOD-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>PortInterfaces</SHORT-NAME>
                      <ELEMENTS>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>RoeStateInterface</SHORT-NAME>
                          <IS-SERVICE>false</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>GetRoeState</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>RoeState</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Darh/ImplementationDataTypes/Darh_RoeStateType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Darh/PortInterfaces/RoeStateInterface/E_NOT_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                  </AR-PACKAGES>
                </AR-PACKAGE>

                <!-- Omc -->

                <AR-PACKAGE>
                  <SHORT-NAME>Omc</SHORT-NAME>
                  <AR-PACKAGES>
                    <AR-PACKAGE>
                      <SHORT-NAME>PortInterfaces</SHORT-NAME>
                      <ELEMENTS>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>OmcModesCallouts</SHORT-NAME>
                          <IS-SERVICE>false</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>AllowOpModeSwitch</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>OperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_OperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ExtendedOperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_ExtendedOperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>NewOperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_OperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>NewExtendedOperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_ExtendedOperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Omc/PortInterfaces/OmcModesCallouts/E_NOT_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Omc/PortInterfaces/OmcModesCallouts/E_RUNNING</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>OpModeSwitchCancelled</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>OperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_OperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ExtendedOperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_ExtendedOperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>RequestedOperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_OperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>RequestedExtendedOperatingMode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_ExtendedOperatingModeType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Omc/PortInterfaces/OmcModesCallouts/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Omc/PortInterfaces/OmcModesCallouts/E_RUNNING</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_RUNNING</SHORT-NAME>
                              <ERROR-CODE>10</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>OmcModesCalloutsResult</SHORT-NAME>
                          <IS-SERVICE>false</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>OpModeSwitchAllowedResult</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>Result</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/boolean</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Omc/PortInterfaces/OmcModesCalloutsResult/E_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>OpModeSwitchCancelledAck</SHORT-NAME>
                              <ARGUMENTS/>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Omc/PortInterfaces/OmcModesCalloutsResult/E_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                        <MODE-SWITCH-INTERFACE>
                          <SHORT-NAME>ExtendedOperatingModeNotification</SHORT-NAME>
                          <IS-SERVICE>false</IS-SERVICE>
                          <MODE-GROUP>
                            <SHORT-NAME>currentExtendedOperatingMode</SHORT-NAME>
                            <TYPE-TREF DEST="MODE-DECLARATION-GROUP">/BMW/Platform/StdDiag/Omc/ModeDeclarationGroups/OmcExtendedOperatingMode</TYPE-TREF>
                          </MODE-GROUP>
                        </MODE-SWITCH-INTERFACE>
                        <MODE-SWITCH-INTERFACE>
                          <SHORT-NAME>OperatingModeNotification</SHORT-NAME>
                          <IS-SERVICE>false</IS-SERVICE>
                          <MODE-GROUP>
                            <SHORT-NAME>currentOperatingMode</SHORT-NAME>
                            <TYPE-TREF DEST="MODE-DECLARATION-GROUP">/BMW/Platform/StdDiag/Omc/ModeDeclarationGroups/OmcOperatingMode</TYPE-TREF>
                          </MODE-GROUP>
                        </MODE-SWITCH-INTERFACE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>ModeDeclarationGroups</SHORT-NAME>
                      <ELEMENTS>
                        <MODE-DECLARATION-GROUP>
                          <SHORT-NAME>OmcExtendedOperatingMode</SHORT-NAME>
                          <CATEGORY>EXPLICIT_ORDER</CATEGORY>
                          <INITIAL-MODE-REF DEST="MODE-DECLARATION">/BMW/Platform/StdDiag/Omc/ModeDeclarationGroups/OmcExtendedOperatingMode/OMC_MODE_EXTENSION_NORMAL</INITIAL-MODE-REF>
                          <MODE-DECLARATIONS>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_NORMAL</SHORT-NAME>
                              <VALUE>0</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_1</SHORT-NAME>
                              <VALUE>1</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_2</SHORT-NAME>
                              <VALUE>2</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_3</SHORT-NAME>
                              <VALUE>3</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_4</SHORT-NAME>
                              <VALUE>4</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_5</SHORT-NAME>
                              <VALUE>5</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_6</SHORT-NAME>
                              <VALUE>6</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_7</SHORT-NAME>
                              <VALUE>7</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_8</SHORT-NAME>
                              <VALUE>8</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_9</SHORT-NAME>
                              <VALUE>9</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_10</SHORT-NAME>
                              <VALUE>10</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_11</SHORT-NAME>
                              <VALUE>11</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_12</SHORT-NAME>
                              <VALUE>12</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_13</SHORT-NAME>
                              <VALUE>13</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_14</SHORT-NAME>
                              <VALUE>14</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_SAVE_ENERGY</SHORT-NAME>
                              <VALUE>15</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_EXTENSION_INVALID</SHORT-NAME>
                              <VALUE>255</VALUE>
                            </MODE-DECLARATION>
                          </MODE-DECLARATIONS>
                          <ON-TRANSITION-VALUE>254</ON-TRANSITION-VALUE>
                        </MODE-DECLARATION-GROUP>
                        <MODE-DECLARATION-GROUP>
                          <SHORT-NAME>OmcOperatingMode</SHORT-NAME>
                          <CATEGORY>EXPLICIT_ORDER</CATEGORY>
                          <INITIAL-MODE-REF DEST="MODE-DECLARATION">/BMW/Platform/StdDiag/Omc/ModeDeclarationGroups/OmcOperatingMode/OMC_MODE_NORMAL</INITIAL-MODE-REF>
                          <MODE-DECLARATIONS>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_NORMAL</SHORT-NAME>
                              <VALUE>0</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_ASSEMBLY</SHORT-NAME>
                              <VALUE>1</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_TRANSPORT</SHORT-NAME>
                              <VALUE>2</VALUE>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>OMC_MODE_BMW_FLASH</SHORT-NAME>
                              <VALUE>3</VALUE>
                            </MODE-DECLARATION>
                          </MODE-DECLARATIONS>
                          <ON-TRANSITION-VALUE>255</ON-TRANSITION-VALUE>
                        </MODE-DECLARATION-GROUP>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>ImplementationDataTypes</SHORT-NAME>
                      <ELEMENTS>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Omc_ExtendedOperatingModeType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <ANNOTATIONS />
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Omc/CompuMethods/CM_ExtendedOperatingModeType</COMPU-METHOD-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                <SW-IMPL-POLICY>STANDARD</SW-IMPL-POLICY>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Omc_OperatingModeType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <ANNOTATIONS />
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Omc/CompuMethods/CM_OperatingModeType</COMPU-METHOD-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                <SW-IMPL-POLICY>STANDARD</SW-IMPL-POLICY>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>DataTypeMappingSets</SHORT-NAME>
                      <ELEMENTS>
                        <DATA-TYPE-MAPPING-SET>
                          <SHORT-NAME>Omc_DataTypeMappingSets</SHORT-NAME>
                          <DATA-TYPE-MAPS />
                          <MODE-REQUEST-TYPE-MAPS>
                            <MODE-REQUEST-TYPE-MAP>
                              <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_OperatingModeType</IMPLEMENTATION-DATA-TYPE-REF>
                              <MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP">/BMW/Platform/StdDiag/Omc/ModeDeclarationGroups/OmcOperatingMode</MODE-GROUP-REF>
                            </MODE-REQUEST-TYPE-MAP>
                            <MODE-REQUEST-TYPE-MAP>
                              <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Omc/ImplementationDataTypes/Omc_ExtendedOperatingModeType</IMPLEMENTATION-DATA-TYPE-REF>
                              <MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP">/BMW/Platform/StdDiag/Omc/ModeDeclarationGroups/OmcExtendedOperatingMode</MODE-GROUP-REF>
                            </MODE-REQUEST-TYPE-MAP>
                          </MODE-REQUEST-TYPE-MAPS>
                        </DATA-TYPE-MAPPING-SET>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>CompuMethods</SHORT-NAME>
                      <ELEMENTS>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_OperatingModeType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                            <COMPU-SCALES>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_NORMAL</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_ASSEMBLY</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_TRANSPORT</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">3</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">3</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_BMW_FLASH</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                            </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_ExtendedOperatingModeType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                            <COMPU-SCALES>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_NORMAL</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_1</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_2</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">3</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">3</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_3</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">4</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">4</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_4</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">5</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">5</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_5</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">6</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">6</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_6</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">7</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">7</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_7</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">8</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">8</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_8</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">9</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">9</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_9</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">10</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">10</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_10</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">11</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">11</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_11</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">12</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">12</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_12</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">13</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">13</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_13</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">14</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">14</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_14</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">15</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">15</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_SAVE_ENERGY</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">255</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">255</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>OMC_MODE_EXTENSION_INVALID</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                            </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                      </ELEMENTS>
                    </AR-PACKAGE>
                  </AR-PACKAGES>
                </AR-PACKAGE>

                <!-- Stm -->

                <AR-PACKAGE>
                  <SHORT-NAME>Stm</SHORT-NAME>
                  <AR-PACKAGES>
                    <AR-PACKAGE>
                      <SHORT-NAME>PortInterfaces</SHORT-NAME>
                      <ELEMENTS>
                        <MODE-SWITCH-INTERFACE>
                          <SHORT-NAME>VehicleStateModeInterface</SHORT-NAME>
                          <IS-SERVICE>false</IS-SERVICE>
                          <MODE-GROUP>
                            <SHORT-NAME>currentVehicleStateMode</SHORT-NAME>
                            <TYPE-TREF DEST="MODE-DECLARATION-GROUP">/BMW/Platform/StdDiag/Stm/ModeDeclarationGroups/Stm_VehicleStateMode</TYPE-TREF>
                          </MODE-GROUP>
                        </MODE-SWITCH-INTERFACE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>ModeDeclarationGroups</SHORT-NAME>
                      <ELEMENTS>
                        <MODE-DECLARATION-GROUP>
                          <SHORT-NAME>Stm_VehicleStateMode</SHORT-NAME>
                          <INITIAL-MODE-REF DEST="MODE-DECLARATION">/BMW/Platform/StdDiag/Stm/ModeDeclarationGroups/Stm_VehicleStateMode/STM_VEHICLE_STATE_UNAVAILABLE</INITIAL-MODE-REF>
                          <MODE-DECLARATIONS>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_PARKING_BN_NOK</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_PARKING_BN_OK</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_CUSTOMER_ABSENT</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_LIVING</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_CHECK_ANALYS_DIAGNOSTICS</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_READINESS_TO_DRIVE_INIT</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_DRIVE</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_READINESS_TO_DRIVE_STOP</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_UNAVAILABLE</SHORT-NAME>
                            </MODE-DECLARATION>
                            <MODE-DECLARATION>
                              <SHORT-NAME>STM_VEHICLE_STATE_INVALID</SHORT-NAME>
                            </MODE-DECLARATION>
                          </MODE-DECLARATIONS>
                        </MODE-DECLARATION-GROUP>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>ImplementationDataTypes</SHORT-NAME>
                      <ELEMENTS>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Stm_VehicleStateType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Stm/CompuMethods/Stm_VehicleStateValues</COMPU-METHOD-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>DataTypeMappingSets</SHORT-NAME>
                      <ELEMENTS>
                        <DATA-TYPE-MAPPING-SET>
                          <SHORT-NAME>Stm_VehicleStatModeRequestTypeMap</SHORT-NAME>
                          <MODE-REQUEST-TYPE-MAPS>
                            <MODE-REQUEST-TYPE-MAP>
                              <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Stm/ImplementationDataTypes/Stm_VehicleStateType</IMPLEMENTATION-DATA-TYPE-REF>
                              <MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP">/BMW/Platform/StdDiag/Stm/ModeDeclarationGroups/Stm_VehicleStateMode</MODE-GROUP-REF>
                            </MODE-REQUEST-TYPE-MAP>
                          </MODE-REQUEST-TYPE-MAPS>
                        </DATA-TYPE-MAPPING-SET>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>CompuMethods</SHORT-NAME>
                      <ELEMENTS>
                        <COMPU-METHOD>
                          <SHORT-NAME>Stm_VehicleStateValues</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                            <COMPU-SCALES>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>1</LOWER-LIMIT>
                                <UPPER-LIMIT>1</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_PARKING_BN_NOK</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>2</LOWER-LIMIT>
                                <UPPER-LIMIT>2</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_PARKING_BN_OK</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>3</LOWER-LIMIT>
                                <UPPER-LIMIT>3</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_CUSTOMER_ABSENT</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>5</LOWER-LIMIT>
                                <UPPER-LIMIT>5</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_LIVING</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>7</LOWER-LIMIT>
                                <UPPER-LIMIT>7</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_CHECK_ANALYS_DIAGNOSTICS</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>8</LOWER-LIMIT>
                                <UPPER-LIMIT>8</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_READINESS_TO_DRIVE_INIT</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>10</LOWER-LIMIT>
                                <UPPER-LIMIT>10</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_DRIVE</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>12</LOWER-LIMIT>
                                <UPPER-LIMIT>12</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_READINESS_TO_DRIVE_STOP</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>14</LOWER-LIMIT>
                                <UPPER-LIMIT>14</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_UNAVAILABLE</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT>15</LOWER-LIMIT>
                                <UPPER-LIMIT>15</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>STM_VEHICLE_STATE_INVALID</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                            </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                      </ELEMENTS>
                    </AR-PACKAGE>
                  </AR-PACKAGES>
                </AR-PACKAGE>

                <!-- Dcm -->

                <AR-PACKAGE>
                  <SHORT-NAME>Dcm</SHORT-NAME>
                  <AR-PACKAGES>
                    <AR-PACKAGE>
                      <SHORT-NAME>DataConstrs</SHORT-NAME>
                      <ELEMENTS>
                        <DATA-CONSTR>
                           <SHORT-NAME>CONSTR_SesCtrlType</SHORT-NAME>
                           <DATA-CONSTR-RULES>
                              <DATA-CONSTR-RULE>
                                 <INTERNAL-CONSTRS>
                                    <LOWER-LIMIT>0x01</LOWER-LIMIT>
                                    <UPPER-LIMIT>0x42</UPPER-LIMIT>
                                 </INTERNAL-CONSTRS>
                              </DATA-CONSTR-RULE>
                           </DATA-CONSTR-RULES>
                        </DATA-CONSTR>
                        <DATA-CONSTR>
                           <SHORT-NAME>CONSTR_OpStatusType</SHORT-NAME>
                           <DATA-CONSTR-RULES>
                              <DATA-CONSTR-RULE>
                                 <INTERNAL-CONSTRS>
                                    <LOWER-LIMIT>0x00</LOWER-LIMIT>
                                    <UPPER-LIMIT>0x03</UPPER-LIMIT>
                                 </INTERNAL-CONSTRS>
                              </DATA-CONSTR-RULE>
                           </DATA-CONSTR-RULES>
                        </DATA-CONSTR>
                        <DATA-CONSTR>
                           <SHORT-NAME>CONSTR_ConfirmationStatusType</SHORT-NAME>
                           <DATA-CONSTR-RULES>
                              <DATA-CONSTR-RULE>
                                 <INTERNAL-CONSTRS>
                                    <LOWER-LIMIT>0x00</LOWER-LIMIT>
                                    <UPPER-LIMIT>0x03</UPPER-LIMIT>
                                 </INTERNAL-CONSTRS>
                              </DATA-CONSTR-RULE>
                           </DATA-CONSTR-RULES>
                        </DATA-CONSTR>
                        <DATA-CONSTR>
                           <SHORT-NAME>CONSTR_NegativeResponseCodeType</SHORT-NAME>
                           <DATA-CONSTR-RULES>
                              <DATA-CONSTR-RULE>
                                 <INTERNAL-CONSTRS>
                                    <LOWER-LIMIT>0x10</LOWER-LIMIT>
                                    <UPPER-LIMIT>0xFE</UPPER-LIMIT>
                                 </INTERNAL-CONSTRS>
                              </DATA-CONSTR-RULE>
                           </DATA-CONSTR-RULES>
                        </DATA-CONSTR>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>ImplementationDataTypes</SHORT-NAME>
                      <ELEMENTS>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Dcm_SesCtrlType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Dcm/CompuMethods/CM_SesCtrlType</COMPU-METHOD-REF>
                                <DATA-CONSTR-REF DEST="DATA-CONSTR">/BMW/Platform/StdDiag/Dcm/DataConstrs/CONSTR_SesCtrlType</DATA-CONSTR-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Dcm_OpStatusType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Dcm/CompuMethods/CM_OpStatusType</COMPU-METHOD-REF>
                                <DATA-CONSTR-REF DEST="DATA-CONSTR">/BMW/Platform/StdDiag/Dcm/DataConstrs/CONSTR_OpStatusType</DATA-CONSTR-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Dcm_ConfirmationStatusType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Dcm/CompuMethods/CM_ConfirmationStatusType</COMPU-METHOD-REF>
                                <DATA-CONSTR-REF DEST="DATA-CONSTR">/BMW/Platform/StdDiag/Dcm/DataConstrs/CONSTR_ConfirmationStatusType</DATA-CONSTR-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Dcm_NegativeResponseCodeType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Dcm/CompuMethods/CM_NegativeResponseCodeType</COMPU-METHOD-REF>
                                <DATA-CONSTR-REF DEST="DATA-CONSTR">/BMW/Platform/StdDiag/Dcm/DataConstrs/CONSTR_NegativeResponseCodeType</DATA-CONSTR-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>UpDownloadPrePostProcessing_ArrayType</SHORT-NAME>
                          <CATEGORY>ARRAY</CATEGORY>
                          <SUB-ELEMENTS>
                            <IMPLEMENTATION-DATA-TYPE-ELEMENT>
                              <SHORT-NAME>data</SHORT-NAME>
                              <CATEGORY>TYPE_REFERENCE</CATEGORY>
                              <!-- maximum size of related routine control data is 273 bytes -->
                              <ARRAY-SIZE>273</ARRAY-SIZE>
                              <ARRAY-SIZE-SEMANTICS>FIXED-SIZE</ARRAY-SIZE-SEMANTICS>
                              <SW-DATA-DEF-PROPS>
                                <SW-DATA-DEF-PROPS-VARIANTS>
                                  <SW-DATA-DEF-PROPS-CONDITIONAL>
                                    <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                  </SW-DATA-DEF-PROPS-CONDITIONAL>
                                </SW-DATA-DEF-PROPS-VARIANTS>
                              </SW-DATA-DEF-PROPS>
                            </IMPLEMENTATION-DATA-TYPE-ELEMENT>
                          </SUB-ELEMENTS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>RequestDataArray</SHORT-NAME>
                          <CATEGORY>ARRAY</CATEGORY>
                          <SUB-ELEMENTS>
                            <IMPLEMENTATION-DATA-TYPE-ELEMENT>
                              <SHORT-NAME>RequestDataArray</SHORT-NAME>
                              <CATEGORY>TYPE_REFERENCE</CATEGORY>
                              <ARRAY-SIZE>1024</ARRAY-SIZE>
                              <ARRAY-SIZE-SEMANTICS>FIXED-SIZE</ARRAY-SIZE-SEMANTICS>
                              <SW-DATA-DEF-PROPS>
                                <SW-DATA-DEF-PROPS-VARIANTS>
                                  <SW-DATA-DEF-PROPS-CONDITIONAL>
                                    <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                  </SW-DATA-DEF-PROPS-CONDITIONAL>
                                </SW-DATA-DEF-PROPS-VARIANTS>
                              </SW-DATA-DEF-PROPS>
                            </IMPLEMENTATION-DATA-TYPE-ELEMENT>
                          </SUB-ELEMENTS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>DiagCommLoopback_ArrayType</SHORT-NAME>
                          <CATEGORY>ARRAY</CATEGORY>
                          <SUB-ELEMENTS>
                            <IMPLEMENTATION-DATA-TYPE-ELEMENT>
                              <SHORT-NAME>data</SHORT-NAME>
                              <CATEGORY>TYPE_REFERENCE</CATEGORY>
                              <ARRAY-SIZE>1024</ARRAY-SIZE>
                              <ARRAY-SIZE-SEMANTICS>FIXED-SIZE</ARRAY-SIZE-SEMANTICS>
                              <SW-DATA-DEF-PROPS>
                                <SW-DATA-DEF-PROPS-VARIANTS>
                                  <SW-DATA-DEF-PROPS-CONDITIONAL>
                                    <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                  </SW-DATA-DEF-PROPS-CONDITIONAL>
                                </SW-DATA-DEF-PROPS-VARIANTS>
                              </SW-DATA-DEF-PROPS>
                            </IMPLEMENTATION-DATA-TYPE-ELEMENT>
                          </SUB-ELEMENTS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>CheckProgrammingPreconditions_ArrayType</SHORT-NAME>
                          <CATEGORY>ARRAY</CATEGORY>
                          <SUB-ELEMENTS>
                            <IMPLEMENTATION-DATA-TYPE-ELEMENT>
                              <SHORT-NAME>data</SHORT-NAME>
                              <CATEGORY>TYPE_REFERENCE</CATEGORY>
                              <ARRAY-SIZE>256</ARRAY-SIZE>
                              <ARRAY-SIZE-SEMANTICS>FIXED-SIZE</ARRAY-SIZE-SEMANTICS>
                              <SW-DATA-DEF-PROPS>
                                <SW-DATA-DEF-PROPS-VARIANTS>
                                  <SW-DATA-DEF-PROPS-CONDITIONAL>
                                    <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                  </SW-DATA-DEF-PROPS-CONDITIONAL>
                                </SW-DATA-DEF-PROPS-VARIANTS>
                              </SW-DATA-DEF-PROPS>
                            </IMPLEMENTATION-DATA-TYPE-ELEMENT>
                          </SUB-ELEMENTS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>ActiveSessionState_ArrayType</SHORT-NAME>
                          <CATEGORY>ARRAY</CATEGORY>
                          <SUB-ELEMENTS>
                            <IMPLEMENTATION-DATA-TYPE-ELEMENT>
                              <SHORT-NAME>data</SHORT-NAME>
                              <CATEGORY>TYPE_REFERENCE</CATEGORY>
                              <ARRAY-SIZE>4</ARRAY-SIZE>
                              <ARRAY-SIZE-SEMANTICS>FIXED-SIZE</ARRAY-SIZE-SEMANTICS>
                              <SW-DATA-DEF-PROPS>
                                <SW-DATA-DEF-PROPS-VARIANTS>
                                  <SW-DATA-DEF-PROPS-CONDITIONAL>
                                    <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                  </SW-DATA-DEF-PROPS-CONDITIONAL>
                                </SW-DATA-DEF-PROPS-VARIANTS>
                              </SW-DATA-DEF-PROPS>
                            </IMPLEMENTATION-DATA-TYPE-ELEMENT>
                          </SUB-ELEMENTS>
                        </IMPLEMENTATION-DATA-TYPE>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>SgbdIndex_ArrayType</SHORT-NAME>
                          <CATEGORY>ARRAY</CATEGORY>
                          <SUB-ELEMENTS>
                            <IMPLEMENTATION-DATA-TYPE-ELEMENT>
                              <SHORT-NAME>data</SHORT-NAME>
                              <CATEGORY>TYPE_REFERENCE</CATEGORY>
                              <ARRAY-SIZE>3</ARRAY-SIZE>
                              <ARRAY-SIZE-SEMANTICS>FIXED-SIZE</ARRAY-SIZE-SEMANTICS>
                              <SW-DATA-DEF-PROPS>
                                <SW-DATA-DEF-PROPS-VARIANTS>
                                  <SW-DATA-DEF-PROPS-CONDITIONAL>
                                    <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                                  </SW-DATA-DEF-PROPS-CONDITIONAL>
                                </SW-DATA-DEF-PROPS-VARIANTS>
                              </SW-DATA-DEF-PROPS>
                            </IMPLEMENTATION-DATA-TYPE-ELEMENT>
                          </SUB-ELEMENTS>
                        </IMPLEMENTATION-DATA-TYPE>

                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>CompuMethods</SHORT-NAME>
                      <ELEMENTS>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_SesCtrlType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                            <COMPU-SCALES>

                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x01</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x01</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DCM_DEFAULT_SESSION</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>

                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x02</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x02</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DCM_PROGRAMMING_SESSION</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>

                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x03</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x03</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DCM_EXTENDED_DIAGNOSTIC_SESSION</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>

                              <COMPU-SCALE>
                                 <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x04</LOWER-LIMIT>
                                 <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x04</UPPER-LIMIT>
                                 <COMPU-CONST>
                                    <VT>DCM_SAFETY_SYSTEM_DIAGNOSTIC_SESSION</VT>
                                 </COMPU-CONST>
                              </COMPU-SCALE>

                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x41</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x41</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DCM_CODING_SESSION</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>

                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x42</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x42</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DCM_SWT_SESSION</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>

                            </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_OpStatusType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                             <COMPU-SCALES>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x00</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x00</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_INITIAL</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x01</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x01</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_PENDING</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x02</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x02</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_CANCEL</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x03</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x03</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_FORCE_RCRRP_OK</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                             </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_ConfirmationStatusType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                             <COMPU-SCALES>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x00</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x00</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_RES_POS_OK</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x01</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x01</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_RES_POS_NOT_OK</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x02</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x02</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_RES_NEG_OK</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                                <COMPU-SCALE>
                                   <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x03</LOWER-LIMIT>
                                   <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x03</UPPER-LIMIT>
                                   <COMPU-CONST>
                                      <VT>DCM_RES_NEG_NOT_OK</VT>
                                   </COMPU-CONST>
                                </COMPU-SCALE>
                             </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_NegativeResponseCodeType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                           <COMPU-INTERNAL-TO-PHYS>
                              <COMPU-SCALES>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x8F</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x8F</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_BRAKESWITCH_NOTCLOSED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x21</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x21</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_BUSYREPEATREQUEST</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x22</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x22</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_CONDITIONSNOTCORRECT</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x84</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x84</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_ENGINEISNOTRUNNING</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x83</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x83</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_ENGINEISRUNNING</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x85</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x85</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_ENGINERUNTIMETOOLOW</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x36</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x36</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_EXCEEDNUMBEROFATTEMPTS</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x26</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x26</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_FAILUREPREVENTSEXECUTIONOFREQUESTEDACTION</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x72</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x72</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_GENERALPROGRAMMINGFAILURE</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x10</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x10</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_GENERALREJECT</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x13</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x13</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_INCORRECTMESSAGELENGTHORINVALIDFORMAT</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x35</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x35</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_INVALIDKEY</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x25</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x25</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_NORESPONSEFROMSUBNETCOMPONENT</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x31</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x31</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_REQUESTOUTOFRANGE</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x24</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x24</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_REQUESTSEQUENCEERROR</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x37</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x37</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_REQUIREDTIMEDELAYNOTEXPIRED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x14</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x14</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_RESPONSETOOLONG</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x81</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x81</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_RPMTOOHIGH</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x82</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x82</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_RPMTOOLOW</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x33</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x33</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_SECURITYACCESSDENIED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x11</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x11</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_SERVICENOTSUPPORTED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x7F</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x7F</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_SERVICENOTSUPPORTEDINACTIVESESSION</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x90</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x90</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_SHIFTERLEVERNOTINPARK</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x12</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x12</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_SUBFUNCTIONNOTSUPPORTED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x7E</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x7E</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_SUBFUNCTIONNOTSUPPORTEDINACTIVESESSION</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x86</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x86</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_TEMPERATURETOOHIGH</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x87</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x87</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_TEMPERATURETOOLOW</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x8A</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x8A</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_THROTTLE_PEDALTOOHIGH</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x8B</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x8B</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_THROTTLE_PEDALTOOLOW</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x91</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x91</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_TORQUECONVERTERCLUTCHLOCKED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x71</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x71</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_TRANSFERDATASUSPENDED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x8D</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x8D</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_TRANSMISSIONRANGENOTINGEAR</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x8C</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x8C</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_TRANSMISSIONRANGENOTINNEUTRAL</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x70</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x70</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_UPLOADDOWNLOADNOTACCEPTED</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x88</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x88</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VEHICLESPEEDTOOHIGH</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x89</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x89</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VEHICLESPEEDTOOLOW</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x92</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x92</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VOLTAGETOOHIGH</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x93</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x93</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VOLTAGETOOLOW</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x73</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x73</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_WRONGBLOCKSEQUENCECOUNTER</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF0</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF0</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_0</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF1</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF1</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_1</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF2</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF2</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_2</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF3</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF3</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_3</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF4</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF4</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_4</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF5</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF5</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_5</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF6</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF6</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_6</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF7</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF7</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_7</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF8</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF8</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_8</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xF9</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xF9</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_9</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xFA</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xFA</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_A</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xFB</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xFB</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_B</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xFC</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xFC</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_C</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xFD</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xFD</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_D</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                                 <COMPU-SCALE>
                                    <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0xFE</LOWER-LIMIT>
                                    <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0xFE</UPPER-LIMIT>
                                    <COMPU-CONST>
                                       <VT>DCM_E_VMSCNC_E</VT>
                                    </COMPU-CONST>
                                 </COMPU-SCALE>
                              </COMPU-SCALES>
                           </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>PortInterfaces</SHORT-NAME>
                      <ELEMENTS>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>ServiceRequestNotification</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>Indication</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>SID</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>RequestData</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/RequestDataArray</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>DataSize</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ReqType</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>SourceAddress</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ErrorCode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_NegativeResponseCodeType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/ServiceRequestNotification/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/ServiceRequestNotification/E_NOT_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/ServiceRequestNotification/E_REQUEST_NOT_ACCEPTED</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>Confirmation</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>SID</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ReqType</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>SourceAddress</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ConfirmationStatus</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_ConfirmationStatusType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/ServiceRequestNotification/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/ServiceRequestNotification/E_NOT_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_REQUEST_NOT_ACCEPTED</SHORT-NAME>
                              <ERROR-CODE>8</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>

                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>DataServices_ActiveSessionState</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>ReadData</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>Data</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/ActiveSessionState_ArrayType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/DataServices_ActiveSessionState/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/DataServices_ActiveSessionState/E_NOT_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>ConditionCheckRead</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ErrorCode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_NegativeResponseCodeType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/DataServices_ActiveSessionState/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/DataServices_ActiveSessionState/E_NOT_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>

                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>DataServices_SgbdIndex</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>ReadData</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>Data</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/SgbdIndex_ArrayType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/DataServices_SgbdIndex/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/DataServices_SgbdIndex/E_NOT_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>

                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>RoutineServices_UpDownloadPrePostProcessing</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>Start</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>Data</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/UpDownloadPrePostProcessing_ArrayType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARRAY-BASE-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>OpStatus</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_OpStatusType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>Result</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARRAY-BASE-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>currentDataLength</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ErrorCode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_NegativeResponseCodeType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_UpDownloadPrePostProcessing/DCM_E_PENDING</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_UpDownloadPrePostProcessing/E_NOT_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_UpDownloadPrePostProcessing/DCM_E_FORCE_RCRRP</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_PENDING</SHORT-NAME>
                              <ERROR-CODE>10</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_FORCE_RCRRP</SHORT-NAME>
                              <ERROR-CODE>12</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>

                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>RoutineServices_DiagCommLoopback</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>Start</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>dataIn</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/DiagCommLoopback_ArrayType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>OpStatus</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_OpStatusType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>dataOut</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/DiagCommLoopback_ArrayType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>currentDataLength</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                                  <DIRECTION>INOUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ErrorCode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_NegativeResponseCodeType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_DiagCommLoopback/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_DiagCommLoopback/E_NOT_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_DiagCommLoopback/DCM_E_PENDING</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_DiagCommLoopback/DCM_E_FORCE_RCRRP</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_PENDING</SHORT-NAME>
                              <ERROR-CODE>10</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_FORCE_RCRRP</SHORT-NAME>
                              <ERROR-CODE>12</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>RoutineServices_CheckProgrammingPreconditions</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>Start</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>OpStatus</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_OpStatusType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>dataOut</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/CheckProgrammingPreconditions_ArrayType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>currentDataLength</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ErrorCode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_NegativeResponseCodeType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_CheckProgrammingPreconditions/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_CheckProgrammingPreconditions/E_NOT_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_CheckProgrammingPreconditions/DCM_E_PENDING</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_CheckProgrammingPreconditions/DCM_E_FORCE_RCRRP</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_PENDING</SHORT-NAME>
                              <ERROR-CODE>10</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_FORCE_RCRRP</SHORT-NAME>
                              <ERROR-CODE>12</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>StdDiagDCMServices</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>GetSesCtrlType</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>SesCtrlType</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_SesCtrlType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/StdDiagDCMServices/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/StdDiagDCMServices/E_NOT_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>RoutineServices_ClearDTCSecondaryErrorMemory</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>Start</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>OpStatus</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_OpStatusType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ErrorCode</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dcm/ImplementationDataTypes/Dcm_NegativeResponseCodeType</TYPE-TREF>
                                  <DIRECTION>OUT</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_ClearDTCSecondaryErrorMemory/DCM_E_PENDING</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_ClearDTCSecondaryErrorMemory/E_NOT_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dcm/PortInterfaces/RoutineServices_ClearDTCSecondaryErrorMemory/DCM_E_FORCE_RCRRP</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_PENDING</SHORT-NAME>
                              <ERROR-CODE>10</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DCM_E_FORCE_RCRRP</SHORT-NAME>
                              <ERROR-CODE>12</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                  </AR-PACKAGES>
                </AR-PACKAGE>

                <!-- Dem -->

                <AR-PACKAGE>
                  <SHORT-NAME>Dem</SHORT-NAME>
                  <AR-PACKAGES>

                    <AR-PACKAGE>
                      <SHORT-NAME>CompuMethods</SHORT-NAME>
                      <ELEMENTS>
                        <COMPU-METHOD>
                          <SHORT-NAME>CM_DTCOriginType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                            <COMPU-SCALES>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x01</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x01</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DEM_DTC_ORIGIN_PRIMARY_MEMORY</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x02</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x02</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DEM_DTC_ORIGIN_MIRROR_MEMORY</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x03</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0x03</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DEM_DTC_ORIGIN_PERMANENT_MEMORY</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">4</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">4</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DEM_DTC_ORIGIN_USERDEFINED_MEMORY_BMWSecondaryErrorMemory</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                            </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                        </COMPU-METHOD>

                        <COMPU-METHOD>
                          <SHORT-NAME>CM_DTCFormatType</SHORT-NAME>
                          <CATEGORY>TEXTTABLE</CATEGORY>
                          <COMPU-INTERNAL-TO-PHYS>
                            <COMPU-SCALES>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DEM_DTC_FORMAT_OBD</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DEM_DTC_FORMAT_UDS</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                              <COMPU-SCALE>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                                <COMPU-CONST>
                                  <VT>DEM_DTC_FORMAT_J1939</VT>
                                </COMPU-CONST>
                              </COMPU-SCALE>
                            </COMPU-SCALES>
                          </COMPU-INTERNAL-TO-PHYS>
                       </COMPU-METHOD>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>DataConstrs</SHORT-NAME>
                      <ELEMENTS>
                        <DATA-CONSTR>
                          <SHORT-NAME>CONSTR_DTCFormatType</SHORT-NAME>
                          <DATA-CONSTR-RULES>
                            <DATA-CONSTR-RULE>
                              <INTERNAL-CONSTRS>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                              </INTERNAL-CONSTRS>
                            </DATA-CONSTR-RULE>
                          </DATA-CONSTR-RULES>
                        </DATA-CONSTR>

                        <DATA-CONSTR>
                          <SHORT-NAME>CONSTR_DTCOriginType</SHORT-NAME>
                          <DATA-CONSTR-RULES>
                            <DATA-CONSTR-RULE>
                              <INTERNAL-CONSTRS>
                                <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0x01</LOWER-LIMIT>
                                <UPPER-LIMIT INTERVAL-TYPE="CLOSED">4</UPPER-LIMIT>
                              </INTERNAL-CONSTRS>
                            </DATA-CONSTR-RULE>
                          </DATA-CONSTR-RULES>
                        </DATA-CONSTR>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>ImplementationDataTypes</SHORT-NAME>
                      <ELEMENTS>
                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Dem_DTCOriginType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Dem/CompuMethods/CM_DTCOriginType</COMPU-METHOD-REF>
                                <DATA-CONSTR-REF DEST="DATA-CONSTR">/BMW/Platform/StdDiag/Dem/DataConstrs/CONSTR_DTCOriginType</DATA-CONSTR-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>

                        <IMPLEMENTATION-DATA-TYPE>
                          <SHORT-NAME>Dem_DTCFormatType</SHORT-NAME>
                          <CATEGORY>TYPE_REFERENCE</CATEGORY>
                          <SW-DATA-DEF-PROPS>
                            <SW-DATA-DEF-PROPS-VARIANTS>
                              <SW-DATA-DEF-PROPS-CONDITIONAL>
                                <COMPU-METHOD-REF DEST="COMPU-METHOD">/BMW/Platform/StdDiag/Dem/CompuMethods/CM_DTCFormatType</COMPU-METHOD-REF>
                                <DATA-CONSTR-REF DEST="DATA-CONSTR">/BMW/Platform/StdDiag/Dem/DataConstrs/CONSTR_DTCFormatType</DATA-CONSTR-REF>
                                <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                              </SW-DATA-DEF-PROPS-CONDITIONAL>
                            </SW-DATA-DEF-PROPS-VARIANTS>
                          </SW-DATA-DEF-PROPS>
                        </IMPLEMENTATION-DATA-TYPE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                    <AR-PACKAGE>
                      <SHORT-NAME>PortInterfaces</SHORT-NAME>
                      <ELEMENTS>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>CddIf</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>ClearDTC</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>DTC</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint32</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>DTCFormat</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dem/ImplementationDataTypes/Dem_DTCFormatType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>DTCOrigin</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/StdDiag/Dem/ImplementationDataTypes/Dem_DTCOriginType</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/CddIf/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/CddIf/DEM_CLEAR_WRONG_DTC</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/CddIf/DEM_CLEAR_WRONG_DTCORIGIN</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/CddIf/DEM_CLEAR_FAILED</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/CddIf/DEM_CLEAR_PENDING</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/CddIf/DEM_CLEAR_BUSY</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/CddIf/DEM_CLEAR_MEMORY_ERROR</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DEM_CLEAR_WRONG_DTC</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DEM_CLEAR_WRONG_DTCORIGIN</SHORT-NAME>
                              <ERROR-CODE>2</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DEM_CLEAR_FAILED</SHORT-NAME>
                              <ERROR-CODE>3</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DEM_CLEAR_PENDING</SHORT-NAME>
                              <ERROR-CODE>4</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>DEM_CLEAR_BUSY</SHORT-NAME>
                              <ERROR-CODE>5</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                               <SHORT-NAME>DEM_CLEAR_MEMORY_ERROR</SHORT-NAME>
                               <ERROR-CODE>6</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>EnableCondition</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>SetEnableCondition</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ConditionFulfilled</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/boolean</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                  <SERVER-ARGUMENT-IMPL-POLICY>USE-ARGUMENT-TYPE</SERVER-ARGUMENT-IMPL-POLICY>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/EnableCondition/E_OK</POSSIBLE-ERROR-REF>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Dem/PortInterfaces/EnableCondition/E_NOT_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                              <ERROR-CODE>1</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                  </AR-PACKAGES>
                </AR-PACKAGE>

                <!-- Det -->

                <AR-PACKAGE>
                  <SHORT-NAME>Det</SHORT-NAME>
                  <AR-PACKAGES>
                    <AR-PACKAGE>
                      <SHORT-NAME>PortInterfaces</SHORT-NAME>
                      <ELEMENTS>
                        <CLIENT-SERVER-INTERFACE>
                          <SHORT-NAME>DETService</SHORT-NAME>
                          <IS-SERVICE>true</IS-SERVICE>
                          <OPERATIONS>
                            <CLIENT-SERVER-OPERATION>
                              <SHORT-NAME>ReportError</SHORT-NAME>
                              <ARGUMENTS>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>InstanceId</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ApiId</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                                <ARGUMENT-DATA-PROTOTYPE>
                                  <SHORT-NAME>ErrorId</SHORT-NAME>
                                  <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR_Platform/ImplementationDataTypes/uint8</TYPE-TREF>
                                  <DIRECTION>IN</DIRECTION>
                                </ARGUMENT-DATA-PROTOTYPE>
                              </ARGUMENTS>
                              <POSSIBLE-ERROR-REFS>
                                <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/StdDiag/Det/PortInterfaces/DETService/E_OK</POSSIBLE-ERROR-REF>
                              </POSSIBLE-ERROR-REFS>
                            </CLIENT-SERVER-OPERATION>
                          </OPERATIONS>
                          <POSSIBLE-ERRORS>
                            <APPLICATION-ERROR>
                              <SHORT-NAME>E_OK</SHORT-NAME>
                              <ERROR-CODE>0</ERROR-CODE>
                            </APPLICATION-ERROR>
                          </POSSIBLE-ERRORS>
                        </CLIENT-SERVER-INTERFACE>
                      </ELEMENTS>
                    </AR-PACKAGE>
                  </AR-PACKAGES>
                </AR-PACKAGE>
              </AR-PACKAGES>
            </AR-PACKAGE>
          </AR-PACKAGES>
        </AR-PACKAGE>
      </AR-PACKAGES>
    </AR-PACKAGE>
  </AR-PACKAGES>
</AUTOSAR>
